/**
 * Created by oureda on 4/23/16.
 */
var should = require("should");
var superagent = require("superagent");
require('es6-promise').polyfill();
var request = require('superagent-promise-plugin').patch(superagent);

var db = require("../models/index");

var host = "127.0.0.1:5000";
var Data = db.models.Data;
var User = db.models.User;
var prefix = (url) => {
    return `${host}/intel${url}`;
};

describe("test API interface",function (){

    var now = new Date().getTime();
    console.log(now);
    it("test get state",function(done){
        request
            .get(prefix("/state"))
            .query({equipment : "intelAir"})
            .query({type : "wind"})
            .then(function(res){
                console.log(res.text);
                done();
            });
    });

    it("test get data",function(done){
        request
            .get(prefix("/data"))
            .query({equipment : "intelSensor"})
            .query({type : "temperature"})
            .query({limit : 5})
            .query({time : now})
            .query({duration : 60 * 60 * 24})
            .then(function(res){
                console.log(res.text);
                done();
            });
    });

    it("test setState",function(done){
        request
            .post(prefix("/setState"))
            .query({equipment: "intelPatch"})
            .query({type : "state"})
            .send({value : "001"})
            .then(function(res){
                console.log(res.text);
                done();
            });
    });

    it("test get plans",function(done){
        request
            .get(prefix("/plan/collection"))
            .then(function(res){
                console.log(res.text);
                done();
            });
    });

    it("test set plans",function(done){
        request
            .post(prefix("/plan"))
            .send({equipment : "intelBody"})
            .send({value : {
                target : "intelPatch",
                result : {
                    on : "111",
                    off : "000"
                }
            }})
            .then(function(res){
                console.log(res.text);
                done();
            });
    });

    // // 老代码不再测试
    // var phone = '18340861711';
    // var pwd = '123456';
    // var token;
    // before('test register Api',function(done) {
    //     request
    //         .post(prefix('/register'))
    //         .send({phone:phone,pwd:pwd,verification:'1234'})
    //         .then((res) => {
    //             console.log(res.text);
    //             var data = JSON.parse(res.text);
    //             done();
    //         });
    // });
    //
    // it('test login Api',function(done){
    //     request
    //         .post(prefix('/login'))
    //         .send({phone:phone,pwd:pwd})
    //         .then((res) => {
    //             console.log(res.text);
    //             var data = JSON.parse(res.text);
    //             data.status.should.be.exactly(1);
    //             token = data.msg.token;
    //             done();
    //         })
    // });
    //
    // it("test /getConnectList",function(done){
    //     request
    //         .get(prefix('/token/getConnectList'))
    //         .set('token',token)
    //         .end(function(err,res){
    //             console.log(res.text);
    //             var data = JSON.parse(res.text);
    //             data.status.should.be.exactly(1);
    //             data.msg.list.should.be.an.instanceOf(Array);
    //             done();
    //         });
    // });
    //
    // it("test /getTemperature",function(done){
    //     request
    //         .get(prefix('/token/getTemperature'))
    //         .set("token",token)
    //         .end(function(err,res){
    //             //console.log(res.text);
    //             var data = JSON.parse(res.text);
    //             data.status.should.be.exactly(1);
    //             data.msg.list.should.be.an.instanceOf(Array);
    //             done();
    //         });
    // });

    //after(function(done){
    //    Data.destroy({
    //        where:{}
    //    }).then(function(){
    //        done();
    //    });
    //});
});